Recommendation component for assisted electronic information processing

ABSTRACT

Methods for a computer implemented game are described that provide assistance to game participants in making various game related decisions easily and quickly. A computer-implemented system may comprise a multimedia content module to provide multimedia content—within a game, a game server application comprising a player ranking module that ranks players based on and a recommendation module to provide recommendations to participants based on the ranking module to assist users with game play. Other embodiments are described and claimed.

BACKGROUND

Electronic applications are well known and becoming increasinglypopular. In particular, certain types of electronic applications includegame experiences which mimic or track real-life activities such assports, hobbies, etc. These games are provided by computer applicationshosted by local servers and/or by servers in the World Wide Web, thatallow users to participate on-line among a group of participantsinterested in the same type of real-life activity.

Generally, electronic applications and in particular fantasy sportsgames simulate real-life games where participants select active playersin various positions to form fantasy teams. A fantasy sports leagueconsists of a plurality of these fantasy sports teams and consequently anumber of these participants. Each fantasy team in the fantasy leagueusually competes against all the other teams in the fantasy league (headto head style) in scheduled matchups or accumulates statistics in chosencategories throughout the season (rotisserie style or ranked style).Success of a particular fantasy team in the fantasy league is determinedby the cumulative number of points obtained by each of the fantasyplayers corresponding to the performance of the real-life players duringthe real-life athletic competitions. The fantasy team with the bestwon-lost record compiled during a fantasy season by the participant'sfantasy team determines the winner.

Typically, real-life players from various teams within the given sportare drafted to create a roster for a particular fantasy team. Real-lifeplayers from different teams comprise a fantasy sports team. Thisdrafting process may be performed via a bidding draft and/or a rotationdraft. In a bidding draft, for example, each fantasy sport participantis initially provided with a specific “bankroll” of bidding units whichmay be used to bid against other participants in an attempt to obtain aspecific real-life player to fill a position on a fantasy team roster.In a rotation draft, the participants within a fantasy league determinean order of selection, and proceed through a number of rounds to fillout the roster of a particular number of players for each fantasy team.Once a player has been drafted by a participant to fill a roster of afantasy team, that player is no longer available to other participantswithin the league. Therefore, each participant must reprioritize theavailable real-life players throughout the draft process.

As in professional sports, the fantasy sports league participants maytrade players during the season for any one of a number of reasons.These trades are made between participants for fantasy players on otherteams and/or from real-life players not selected in the initial draft bythe participants within the fantasy sports league. A fantasy sportsleague typically corresponds to the length of the representativereal-life sport with the potential exception of using a certain numberof the final regular season games of the real life sports season as theplayoffs and subsequent championship for the fantasy sports league.

During the course of a fantasy sports season, management of aparticipant's roster is one of the keys to presenting a competitive teamwithin the league as well as providing an opportunity to win games.However, during a gaming season a number of situations may occur thatimpact the ability of the fantasy team and associated roster of playersto perform in the league. For example, injuries to real-life players mayimpact the ability of game participants to utilize players on theirrosters. In addition, the volume of statistics and information availablefor real-life player performance is voluminous and difficult for gameparticipants to sort through. For example, statistics are available forhow a particular real-life player performs against particularcomponents, how they perform on artificial surfaces versus grass, howthey perform in bad weather versus good weather, etc. In addition, thirdparty “expert” information for both real-life teams and players as wellas fantasy sports leagues is also available to game participants. Thus,a game participant may be overwhelmed with the various statistics andinformation available to determine roster choices for a given game.Currently, there is no mechanism for such participants to process all ora portion of the information available to a game participant or toprovide assistance to a game participant with roster managementdecisions thereby providing an enhanced gaming experience and increasedcompetition among league participants. It is with respect to these andother considerations that the present improvements have been needed.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a block diagram of a system in accordance with anembodiment of the present disclosure.

FIG. 2 illustrates assistant general manager information and interfaceswith the user and processing module in accordance with an embodiment ofthe present disclosure.

FIG. 3 illustrates an embodiment of the interface between the multimediacontent and information and the multimedia content interface module ofthe assistant general manager module in accordance with an embodiment ofthe present disclosure.

FIG. 4 illustrates an embodiment of the assistant general managerrecommendation module in accordance with an embodiment of the presentdisclosure.

FIG. 5 illustrates an embodiment of the action items module of theassistant general manager module in accordance with an embodiment of thepresent disclosure.

FIG. 6 illustrates an embodiment of the manage settings applicationassociated with the assistant general manager module in accordance withan embodiment of the present disclosure.

FIG. 7 illustrates an exemplary embodiment of a logic flow for theassistant general manager module in accordance with an embodiment of thepresent disclosure.

FIGS. 8A and 8B illustrate an exemplary embodiment of a logic flow forthe assistant general manager module in accordance with an embodiment ofthe present disclosure.

FIG. 9 illustrates an embodiment of a computing architecture.

FIG. 10 illustrates an embodiment of an exemplary communicationsarchitecture.

DETAILED DESCRIPTION

Various embodiments are generally directed to gaming systems and methodsof playing that provide assistance to game participants in makingvarious roster decisions easily and quickly. This assists gameparticipants with difficult decisions with the goal of keepingparticipants engaged in game play and maintaining competitiveness of thegame as a whole as well as the game experience for all participants.Generally and for exemplary purposes, game play may include variousgames including, but not limited to, table games, fantasy sports games,interactive television games as well as other simulation games. Forexample, fantasy sports games may be associated with real-life sports,professional and/or amateur (e.g. college football), having multiplegames in an individual season. The operation and function of a fantasysports league is generally known and typically comprises at least twofantasy teams formed of fantasy players selected or drafted to comprisea fantasy team roster. Each of the fantasy players represent a real-lifeathlete that participates in a professional or amateur real-life sport.The real-life statistics of each player on each fantasy team arecompiled after each real-life game. The statistics correlate to aparticular number of fantasy points as mentioned above.

Embodiments are directed to systems and methods of gaming that provideassistance to users/participants in making various roster decisionseasily and quickly. For instance, embodiments may comprise a multimediacontent module operative to provide multimedia content related to one ormore players within a game and a game server application operative toprovide player recommendations to one or more users utilizing themultimedia content received from the multimedia content module. A playerranking module may also be included which ranks one or more playersbased on certain of the multimedia content and outputs a player rankingby corresponding player position. A player comparison module receivesthe player ranking by position and compares the ranked players to aroster of players associated with the one or more users by correspondingposition. A recommendation module receives the comparison of the rankedplayers to the roster of players by corresponding position andrecommends to the one or more users the ranked player when the rankedplayer is ranked higher than the corresponding player on the roster of auser at the corresponding position.

Although the present disclosure describes gaming mechanics that arefocused on embodiments that relate to sports, these same gamingmechanics can be used in any sort of game and gaming mechanics where aplatform utilizes data from a real time gaming situation with the samerules, functions and mechanics described herein, to simulate a new gamebased upon the same rules and mechanics with the same data and/ordifferent data that is being supplied in a different way for a differentpurpose depending on the type of game. For example, the gaming mechanicsmay comprise any electronic game that involves interaction with a userinterface to generate multimedia feedback on an electronic platform,such as a computing device, video game console, handheld computer,arcade machine, and so forth. The games may include any genre based onmany factors such as game play, types of goals, art style and more, andmay include without limitation graphic adventures, point-and-clickadventures, text adventures, sports, first-person adventures,first-person shooters, comic adventures, anime adventures, realityinteractive television based games and so forth. It may be appreciatedthat any number of different games and gaming mechanics may beimplemented for a given game that provides assistance to theuser/participant to facilitate game play. However, the embodiments arenot limited in this context.

FIG. 1 illustrates a block diagram of a system 10 comprising a pluralityof users/participants 15 ₁ . . . 15 _(N), a network communication system20 that allows each of the plurality of user/participants 15 . . . 15_(N) to communicate with system server(s) 30. As mentioned above, thesystem 10 may be configured to support any one of a plurality of gametypes utilizing an assistant General Manager (“GM”) module to providegaming recommendations to a user/participant. However, for the purposesof illustration, the system 10 will be described as a fantasy sportssystem and each of the user/participants 15 ₁ . . . 15 _(N) may accessthe system server(s) 30 utilizing participant devices having theexemplary computer architecture as described with reference to FIG. 9.The network communication system 20 may be broadly interpreted as anetwork of any type or an interconnection of a plurality of networksproviding bi-directional communication between each of theusers/participants and the system server(s) 30 as described withreference to FIG. 10.

As would be appreciated by those of ordinary skill in the art, systemserver(s) 30 provides a platform for access to game information andfacilitates game play by each of the plurality of user/participants 15 ₁. . . 15 _(N). For example, system server(s) 30 may store multimediainformation of various players in multimedia content and informationmodule 40 for one or more fantasy teams in one or more fantasy leaguesincluding, for example, fantasy player statistics, text data, images,audio, video, etc. Again, the player is used herein in the context ofsports games, but may also include participants/contestants in any typeof gaming context. This information is managed by the system server(s)30 and accessed by users/participants in order to facilitate game playusing processing module 60. As used herein, “statistics” includes anyidentifiable, measurable, monitored or recorded action by a real-lifeplayer in the player's real-life sport. Each real-life sport includescommonly used statistics which translate into points associated with thefantasy sports league. Statistics are calculated, input, or provided byone or more databases either manually or preferably automatically and/orelectronically, i.e., by computer or similar processing devices andstored in multimedia content and information module 40. Electronicallyincludes, but is not limited to computer, Internet, or other suitableelectronic processing. Automatic updating can occur at set timeintervals which may depend on the type of sport (e.g. football may beupdated once per week), customized when a league is organized or uponrequest by a game user/participant. In addition, the statistics may beprovided independently by a separate system or integrated with system10. In further variations, the statistics are received in real-timeand/or the player updates are generated automatically or upon request.

Included as part of the system server(s) 30 is a processing module 60and an assistant general manager (“GM”) module 50. Processing module 60facilitates game play for the users/participants 15 ₁ . . . 15 _(N). Invarious embodiments, logic for the game processing module 50 and system10 may be programmed in accordance with various programming languages,application platforms and application frameworks, including JAVA made byOracle Corporation, COLDFUSION made by Adobe Systems Incorporated, .NETmade by Microsoft® Corporation, WebORB for .NET, Hypertext Preprocessor(PHP), Ruby, Python, Perl, Lisp, Dylan, Pike, Cluster (CLU), Smalltalk,Eiffel, Ruby on Rails (RoR), C, C++, C#, and so forth. The logic mayalso comprise part of a RIA, such as a front-end of a SOA for deploymenton a web browser of a client computing device using various client sidetechnologies, such as an Adobe Flash platform programmed in anobject-oriented programming language such as ACTIONSCRIPT™ and ADOBE®FLEX, made by Adobe Systems Incorporated. It may be appreciated thatthese programming languages are provided by way of example and notlimitation. Logic for processing module 60 and associated system 10 maybe implemented using any suitable programming language.

Assistant general manager (“GM”) module 50 accesses player informationfrom multimedia content and information module 40 based on requests fromgame users/participants 1 ₅₁ . . . 1 _(5N) in order to allow eachparticipant to generate and modify a participant's game profilecomprised of a player roster as well as providing the ability to managea participant's roster for a given competition. In particular, theassistant GM module 50 provides a participant access to informationabout one or more players. For example, once a participant accesses theassistant GM module, information such as the contestant or player'sname, upcoming opponent, game time and day as well as access to theassistant GM recommendation module 80 (see FIG. 2) is provided. Changesin team line-ups may occur during a season, such as by replacement ofplayers for non-performance, injury, or other reasons, including tradeof roster players among game users/participants. Additionally, playersmay be reserved, benched, activated or started, as specific league rulespermit.

The assistant GM module 50, multimedia content and information module 40as well as other components and data are communicatively coupled viavarious types of communications media. System server 30 managesoperations and communication between assistant GM module 50, multimediacontent and information module 40 and processing module 60. Thecoordination may involve the uni-directional or bi-directional exchangeof information. For instance, the processing module 60 may control thesystem server(s) 30 to manage communication in the form of signalscommunicated over communications media between each of the componentsand/or functions therein as well as with the user/participants 15 ₁ . .. 15 _(N) via network communication system 20.

A new and unique operational aspect of game system 10 in accordance withthe present disclosure as provided by the game system server(s) 30 isdirected to utilization of the assistant GM module 50 to provideassistance to users/participants with team management decisions from amyriad of player information easily to facilitate game play. This isaccomplished by the assistant GM module 50 communicating with multimediacontent and Information module 40 and processing module 60 to provideuser participants 15 ₁ . . . 15 _(N) with player and rosterrecommendations.

FIG. 2 illustrates assistant GM module 50 and the communicationinterface with each of processing module 60 and one of a plurality ofusers/participants 15 _(N). Assistant GM module 50 includes multimediacontent interface 70, recommendation module 80, action module 90 and amanage settings application 100. As mentioned above, assistant GM module50 is configured to process received information about playersassociated with a particular game and determine which players should berecommended to a user/participant 15N to improve the user/participantroster of players. In particular, within the system server(s) 30, theassistant GM module 50 identifies certain information such as, forexample, player name, upcoming opponent information, game time and dayand stores this information in multimedia content and information module40 which may be accessed by multimedia content interface 70. Thismultimedia content and information may be accessed by the assistant GMrecommendation module 80 to provide recommendations to auser/participant (e.g. participant 15 _(N)) in making lineup decisionseasily and quickly. A user/participant may consider theserecommendations and may or may act upon them. Action module 90 allowsthe user/participant 15 _(N) with the opportunity to act upon therecommendation provided by the recommendation module 80 with processingmodule 60 via interface 55. The recommendation from recommendationmodule 80 may be communicated to the user/participant 15 _(N) via aninput device again through interface 55. An input device (e.g., gamecontroller, keyboard, joystick, mouse, trackball, touchpad, touchscreen,microphone, headphones, etc.) may accept control directives from theuser/participant 15 _(N) to receive and communicate information and/orcommands to processing module 60 and/or assistant GM module 50. Theprocessing module 60 and/or assistant GM module 50 may be programmed tooutput multimedia feedback (e.g., audio, visual, audio/visual, tactile,olfactory, etc.) in response to such user/participant commands using oneor more output devices (e.g., a display) to the user/participant 15_(N). The manage settings application 100 of assistant GM module 50allows each user/participant 15 _(N) to manage various recommendationsprovided by recommendation module 80. For example and as explained inmore detail below with reference to FIG. 6, a user/participant 15 _(N)may decide, in the case of a sports fantasy game, to only view freeagent suggestions provided by recommendation module 80. In addition, auser/participant 15 _(N) may decide to allow assistant GM module 50 toalert the user/participant of certain deadlines (e.g. lineup submission)and/or trade offers from other users/participants.

FIG. 3 is a block diagram illustrating the content and interaction ofmultimedia content and information module 40 from system server(s) 30and the multimedia content interface module of assistant GM module 50.As briefly mentioned above, multimedia content and information module 40includes or has access to player information including past performancestatistics, video, web sites and/or web page addresses. The informationstored or accessible by multimedia content and information module 40 isrelevant to the particular game running on system servers 30. Forexample, if the game running on system server 30 and played byusers/participants 15 ₁ . . . 15 _(N) is a fantasy sports game, variousstatistics about how real-life or fantasy players perform againstcertain opponents, in certain weather conditions, etc., could be helpfulfor a user/participant during game play. In addition, multimedia contentand information module 40 may have access to or temporarily store videoof relevant real-life players. In the case of fantasy sports gaming, theterm “relevant player(s)” refers to those real-life players that playpositions which provide points for a user/participant's fantasy team.For example, when the game is a fantasy football game, real-life playerssuch as quarterbacks, running backs, wide receivers, etc., may producefantasy points based on their performance in the real-life game.However, players such as offensive lineman, defensive lineman, etc., donot usually have the capability to score fantasy game points. Thus, inthis situation multimedia content and information module 40 would storeand/or have access to information about relevant players; i.e. thoseplayers capable of scoring points for a fantasy game roster as opposedto those players that cannot score points for a fantasy game roster.

Multimedia content and information module 40 accesses system server 30where the various statistics, video, web site and/or web page addressesare stored. In particular, multimedia content interface 40 may generatea query to a database within system server 30 to obtain such multimediacontent and/or information associated with a particular player (e.g.player N). The database that receives the query may be a relationaldatabase responsive to Structured Query Language (“SQL”) commands. Theserver may execute a hypertext preprocessor (“PHP”) script including SQLcommands to query the database for such player related information orexecute a retrieve command for information stored on an external webpage, website or combination of multiple web pages and/or websites.Assistant GM module 50 and more particularly multimedia contentinterface receives this information from multimedia content andinformation module 40 and utilizes this information mainly inrecommendation module 80 to determine which, if any, of the players 1 .. . N may be compared to players on a user/participant roster and thesubject of a trade, free agent acquisition, etc. under action module 90.

FIG. 4 illustrates the assistant GM recommendation module which includesplayer ranking module 405, and player comparison module 410. Generally,assistant GM module 80 compares player ranking information with theplayers in a participant's roster to provide the participant withfantasy player recommendations. In particular, information about theperformance of particular players supplied by multimedia contentinterface 70 is input to player ranking module 405. The particularplayers and the type of information supplied by multimedia contentinterface 70 may be customized by a user/participant based on themultimedia content information module 40. The fantasy players at aparticular position are ranked by player ranking module 405 based on thereceived information from multimedia content interface 70. Fantasyplayer ranking module 405 may include a plurality of ranking sub-modules405 ₁ . . . 405 _(N) used to rank players based on various parameters.For example, sub-module 405 ₁ may be used to rank all players at aparticular position. Sub-module 405 ₂ may be used to rank only the top Nnumber of players at a position different from the position ranked bysub-module 405 ₁ and so on with respect to sub-module 405 _(N). In thismanner, the player ranking module 405 is used to rank different playersat different positions based on game and/or participant preferences.

The ranking information is provided to player comparison module 410which compares the player rankings with a player roster associated witha particular user/participant 15 ₁ . . . 15 _(N). These ranked playersare compared to the corresponding player at the same position on aparticipant's roster by player comparison module 410. If a player iscompared to a participant's roster player at the same position and isranked higher than the participant's player at module 410, then theidentity of the ranked player is recommended at 406 and displayed touser/participant 15 _(N) via graphical user interface 411. The number‘N’ of ranked players compared to each position of a participant'sroster is customizable and may be, for example, three or four players.Thus, a participant has a choice of N players provided at 406 to choosefrom to replace the corresponding player on the participant's roster.This replacement may be by starting a bench player or trading foranother player as explained in more detail below. In this manner, theassistant GM recommendation module 410 determines if a player is of acaliber and quality to deserve a roster spot on a participant's team.

Player comparison module 410 determines the inadequacies of a currentroster player by identifying predetermined weaknesses including, but notlimited to, injury, bye week, underperformance based on year to datestatistics which may be supplied by multimedia content interface 70, andupcoming projections based on performance to date against a particularopponent. In addition, multimedia content interface 70 may also supplyinformation to player comparison module 410 regarding the percentages ofteams within the current fantasy league as well as other leagues thathave dropped, traded or otherwise removed a user/participant's rosterplayer from their respective rosters. Each of the above considerationsmay be supplied to the user/participant 15 _(N) via graphical userinterface 411 in a particular order of importance. The order ofimportance may be based on rules within a particular league, or based onindividual user/participant preferences.

Assistant GM recommendation module 80 would typically provide therecommended player(s) information at 406 to a participant who would theninitiate roster replacement by anyone of three ways: lineup changeswhich modifies an active player to a reserve player; free agentacquisition based on league rules, and/or potential trade opportunitiesfor players on other teams. All of the above actions are intended toprovide the user/participant with opportunities to upgrade theuser/participant's roster for the next scheduled competition quickly andeasily. With respect to potential trade opportunities, player comparisonmodule 410 includes rules, based on a particular league, for tradedeadlines and associated timing prior to upcoming competitions. Withrespect to free agent acquisitions, player comparison module 410includes rules, based on a particular league, for free agentacquisitions where no recommendation is made that contradicts theserules. Rule variations regarding free agent acquisition include but arenot limited to the ability to add players immediately, require a minimumtime to elapse and/or process requests at scheduled times to allow otherparticipants the opportunity to request the same free agent. Competingrequests to be resolved via bidding process or a rotating order.

FIG. 5 is a block diagram illustrating action items module 90 ofassistant GM module 50. A function of this module, as previouslymentioned, is to carry out the replacement of a player on auser/participant's current roster as recommended by assistant GMrecommendation module 50. In particular, submodule 90 ₁ of action itemsmodule 90 executes the lineup change as suggested by assistant GMrecommendation module 80 upon confirmation by user/participant 15 _(N).Submodule 90 ₂ of actions items module 90 executes a comparison of theplayer on the user/participant's roster with the free agentrecommendation from assistant GM recommendation module 80. Uponuser/participant acknowledgement via a display device, submodule 90 ₃sends the user/participant 15 _(N) to a new page or tab within system 10(which may be, for example, a web page) that identifies the recommendedfree agent players for adding or dropping to/from the user/participant'sroster based on the free agent recommendations from assistant GMrecommendation module 80. Another function of action items module 90 isto execute based on user/participant acknowledgment, a trade of acurrent roster player based on the recommendation from assistant GMmodule 50. In particular, submodule 90 ₄ executes a compare of a playeron the user/participant's 15 _(N) roster to players recommended for atrade from assistant GM module 50. Submodule 90 ₅ provides notificationto the team the player recommended to trade for by assistant GM module50 that a trade opportunity is available for the currentuser/participant player. Once the user/participant 15N takes actionbased on the recommendation, assistant GM module 50 updates the rostersof the users/participants based on the trade.

FIG. 6 is a block diagram of the manage settings application 100 ofassistant GM module 50 which allows users/participants 15 ₁ . . . 15_(N) to customize their settings for a particular game. In particular,the options submodule 110 allows a user/participant to display or notdisplay lineup suggestions, free agent suggestions and/or tradesuggestions from assistant GM recommendation module 80. Submodule 120allows users/participants 15 ₁ . . . 15 _(N) to customize the particularpages (i.e. web page interface) displayed within the assistant GM module50. In particular, the location submodule 120 provides auser/participant to select which or all of the lineup page, sortablestatistics page and/or offer trade page to display.

Operations for the above-described game system embodiments may befurther described with reference to one or more logic flows. It may beappreciated that the representative logic flows do not necessarily haveto be executed in the order presented, or in any particular order,unless otherwise indicated. Moreover, various activities described withrespect to the logic flows can be executed in serial or parallelfashion. The logic flows may be implemented using one or more hardwareelements and/or software elements of the described embodiments oralternative elements as desired for a given set of design andperformance constraints. For example, the logic flows may be implementedas logic (e.g., computer program instructions) for execution by a logicdevice (e.g., a general-purpose or specific-purpose computer).

FIG. 7 illustrates an embodiment of a logic flow 500. The logic flow 500is representative of a general overview of some of the operationsexecuted by one or more embodiments of the game system 10 and moreparticularly of assistant GM module 50. In the illustrated embodimentshown in FIG. 7, the logic flow 500 provides assistant GM module 50 withplayer relevant information from multimedia content and informationmodule 40 at step 505. This information may be supplied for each playerand by information type depending on user/participant preferences.Assistant GM module 50 recommends changes to a user/participant's 15 ₁ .. . 15 _(N) lineup at block 510 as described in more detail withreference to FIG. 8. These recommendations may or may not be executed onby the participant. At block 520, assistant GM module 50 updates thelineup of a user/participant with the recommended players depending onwhether or not the ranked players are ranked higher than existingplayers on the user/participant's lineup and based on whether or not theparticipant wants to make the recommended line-up changes. The logicflow 500 continues to block 525 which supplies the updated lineup forthe user/participant to processing module 60 to easily and quicklyupdate the active roster of a user/participant 15 _(N).

FIGS. 8A and 8B illustrate a logic flow 800 which is an exploded view ofblock 510 shown in FIG. 7. The ranking of inactive participant lineupplayers at each position is compared to the ranked players at step 810.After this comparison, a determination is made at step 820 if the rankedplayers are ranked higher than players on the user/participant's lineupat the corresponding position. If the ranked players are not rankedhigher than a player on the user/participant's lineup, then the processproceeds to step 825 and no player is recommended to theuser/participant's lineup. If the ranked players are ranked higher thana player on the current user/participant's lineup, then the processproceeds to step 830 where a determination is made whether or not theranked player at the particular position is a bench player on theuser/participant's roster. If the ranked player is a bench player on theuser/participant's roster, then a recommendation is made to theparticipant to activate the bench player at step 835 and the processproceeds to step 865 where the inactive participant's lineup is updatedby action items module 90.

If the ranked player is not a bench player on the user/participantcurrent roster, then the process proceeds to step 840 of FIG. 8B where adetermination is made if the ranked player, at that position, is on ananother user/participant's team. If this condition is not satisfied,then the process proceeds to step 845 and the ranked player must be afree agent. A free agent acquisition is recommended for the rankedplayer to the user/participant and the process proceeds to step 865where the inactive participant lineup is updated at the preference ofthe participant. If, at step 840, it is determined that the rankedplayer is on another participant's team, a trade offer is recommended tothe participant for the ranked player at step 855. At step 860, if theparticipant decides to execute the recommended trade, a determination ismade if the trade offer was accepted by the other user/participant thathas the ranked player on its roster. If the trade offer was accepted andany/all other trade approvals have been met (e.g. trades approved bycommissioner, voted on by other participants, etc.), the processproceeds to step 865 and the inactive participant lineup is updated withthe ranked player at that position. If the trade offer was not acceptedby the user/participant, the process proceeds to step 870 where the nextranked player at that particular position is identified and the processreturns to step 820. It should be noted that each of these steps in theprocess may be customized to provide player recommendations for lineupchanges, drafts, trades, etc., based on league or game play rulepreferences. In addition, the number and details of each ranked playerprovided by assistant GM module 50 may be dependent on game play rules.

FIG. 9 illustrates an embodiment of an exemplary computing architecture900 suitable for implementing various embodiments of the game system andmethods as previously described. In particular, the computingarchitecture 900 may be used by a game participant 15 ₁ . . . 15 _(N)and/or the system server (s) and/or a portion thereof. The computingarchitecture 900 includes various common computing elements, such as oneor more processors, co-processors, memory units, chipsets, controllers,peripherals, interfaces, oscillators, timing devices, video cards, audiocards, multimedia input/output (I/O) components, and so forth. Theembodiments, however, are not limited to implementation by the computingarchitecture 1200.

As shown in FIG. 9, the computing architecture 900 comprises aprocessing unit 904, a system memory 906 and a system bus 908. Theprocessing unit 904 can be any of various commercially availableprocessors. Dual microprocessors and other multi-processor architecturesmay also be employed as the processing unit 904. The system bus 908provides an interface for system components including, but not limitedto, the system memory 906 to the processing unit 904. The system bus 908can be any of several types of bus structure that may furtherinterconnect to a memory bus (with or without a memory controller), aperipheral bus, and a local bus using any of a variety of commerciallyavailable bus architectures.

The system memory 906 may include various types of memory units to storeinformation in system 10 and may be, for example, read-only memory(ROM), random-access memory (RAM), dynamic RAM (DRAM), Double-Data-RateDRAM (DDRAM), synchronous DRAM (SDRAM), static RAM (SRAM), programmableROM (PROM), erasable programmable ROM (EPROM), electrically erasableprogrammable ROM (EEPROM), flash memory, polymer memory such asferroelectric polymer memory, ovonic memory, phase change orferroelectric memory, silicon-oxide-nitride-oxide-silicon (SONOS)memory, magnetic or optical cards, or any other type of media suitablefor storing information. In the illustrated embodiment shown in FIG. 9,the system memory 906 can include non-volatile memory 910 and/orvolatile memory 912. A basic input/output system (BIOS) can be stored inthe non-volatile memory 910.

The computer 902 may include various types of computer-readable storagemedia, including an internal hard disk drive (HDD) 914, a magneticfloppy disk drive (FDD) 916 to read from or write to a removablemagnetic disk 918, and an optical disk drive 920 to read from or writeto a removable optical disk 922 (e.g., a CD-ROM or DVD). The HDD 914,FDD 916 and optical disk drive 920 can be connected to the system bus908 by a HDD interface 924, an FDD interface 926 and an optical driveinterface 928, respectively. The HDD interface 924 for external driveimplementations can include at least one or both of Universal Serial Bus(USB) and IEEE 1394 interface technologies.

The drives and associated computer-readable media provide volatileand/or nonvolatile storage of data, data structures, computer-executableinstructions, and so forth. For example, a number of program modules canbe stored in the drives and memory units 910, 912, including anoperating system 930, one or more application programs 932, otherprogram modules 934, and program data 936 applicable to system 10. Theone or more application programs 932, other program modules 934, andprogram data 936 can include, for example, the system 10, the systemsused by user/participants 15 ₁ . . . 15 _(N), and/or the game systemserver(s) 30.

A user/participant 15 ₁ . . . 15 _(N) can enter commands and informationinto the computer 902 through one or more wire/wireless input devices,for example, a keyboard 938 and a pointing device, such as a mouse 940.Other input devices may include a microphone, an infra-red (IR) remotecontrol, a joystick, a game pad, a stylus pen, touch screen, or thelike. These and other input devices are often connected to theprocessing unit 904 through an input device interface 942 that iscoupled to the system bus 908, but can be connected by other interfacessuch as a parallel port, IEEE 1394 serial port, a game port, a USB port,an IR interface, and so forth.

A monitor 944 or other type of display device is also connected to thesystem bus 908 via an interface, such as a video adaptor 946 and can beused to display player recommendation information R₁ . . . R_(N) to theone or more user/participants 15 ₁ . . . 15 _(N). In addition to themonitor 944, a computer typically includes other peripheral outputdevices, such as speakers, printers, and so forth.

The computer 902 may operate in a networked environment using logicalconnections via wire and/or wireless communications to one or moreremote computers, such as a remote computer 948. The remote computer 948can be a workstation, a server computer, a router, a personal computer,portable computer, microprocessor-based entertainment appliance, a peerdevice or other common network node, and typically includes many or allof the elements described relative to the computer 902, although, forpurposes of brevity, only a memory/storage device 950 is illustrated.The logical connections depicted include wire/wireless connectivity to alocal area network (LAN) 952 and/or larger networks, for example, a widearea network (WAN) 954. Such LAN and WAN networking environments arecommonplace in offices and companies, and facilitate enterprise-widecomputer networks, such as intranets, all of which may connect to aglobal communications network, for example, the Internet.

When used in a LAN networking environment, the computer 902 is connectedto the LAN 952 through a wire and/or wireless communication networkinterface or adaptor 956. The adaptor 956 can facilitate wire and/orwireless communications to the LAN 952, which may also include awireless access point disposed thereon for communicating with thewireless functionality of the adaptor 956.

When used in a WAN networking environment, the computer 502 can includea modem 958, or is connected to a communications server on the WAN 954,or has other means for establishing communications over the WAN 954,such as by way of the Internet. The modem 958, which can be internal orexternal and a wire and/or wireless device, connects to the system bus908 via the input device interface 942. In a networked environment,program modules depicted relative to the computer 902, or portionsthereof, can be stored in the remote memory/storage device 950. It willbe appreciated that the network connections shown are exemplary andother means of establishing a communications link between the computerscan be used.

The computer 902 is operable to communicate with wire and wirelessdevices or entities using the IEEE 802 family of standards, such aswireless devices operatively disposed in wireless communication (e.g.,IEEE 802.11 over-the-air modulation techniques) with, for example, aprinter, scanner, desktop and/or portable computer, personal digitalassistant (PDA), communications satellite, any piece of equipment orlocation associated with a wirelessly detectable tag (e.g., a kiosk,news stand, restroom), and telephone. This includes at least Wi-Fi (orWireless Fidelity), WiMax, and Bluetooth™ wireless technologies. Thus,the communication can be a predefined structure as with a conventionalnetwork or simply an ad hoc communication between at least two devices.Wi-Fi networks use radio technologies called IEEE 802.11x (a, b, g,etc.) to provide secure, reliable, fast wireless connectivity. A Wi-Finetwork can be used to connect computers to each other, to the Internet,and to wire networks (which use IEEE 802.3-related media and functions).

FIG. 10 illustrates a block diagram of an exemplary communicationsarchitecture 1000 suitable for implementing various embodiments ofsystem 10 and associated methods as previously described. Thecommunications architecture 1000 includes various common communicationselements, such as a transmitter, receiver, transceiver, radio, networkinterface, baseband processor, antenna, amplifiers, filters, and soforth. The embodiments, however, are not limited to implementation bythe communications architecture 1000.

As shown in FIG. 10, the communications architecture 1000 comprises oneor more clients 1302 and servers 1004. The clients 1002 may implementthe systems used by the users/participants 15 ₁ . . . 15 _(N). Theservers 1004 may implement the system server(s) 30. The clients 1002 andthe servers 1004 are operatively connected to one or more respectiveclient data stores 1008 and server data stores 1010 that can be employedto store information local to the respective clients 1002 and servers1004, such as cookies and/or associated contextual information.

The clients 1002 and the servers 1004 may communicate informationbetween each other using a communication framework 1006. Thecommunications framework 1306 may implement any well-knowncommunications techniques, such as techniques suitable for use withpacket-switched networks (e.g., public networks such as the Internet,private networks such as an enterprise intranet, and so forth),circuit-switched networks (e.g., the public switched telephone network),or a combination of packet-switched networks and circuit-switchednetworks (with suitable gateways and translators). The clients 1002 andthe servers 1004 may include various types of standard communicationelements designed to be interoperable with the communications framework1006, such as one or more communications interfaces, network interfaces,network interface cards (NIC), radios, wireless transmitters/receivers(transceivers), wired and/or wireless communication media, physicalconnectors, and so forth. By way of example, and not limitation,communication media includes wired communications media and wirelesscommunications media. Examples of wired communications media may includea wire, cable, metal leads, printed circuit boards (PCB), backplanes,switch fabrics, semiconductor material, twisted-pair wire, co-axialcable, fiber optics, a propagated signal, and so forth. Examples ofwireless communications media may include acoustic, radio-frequency (RF)spectrum, infrared and other wireless media. One possible communicationbetween a client 1002 and a server 1004 can be in the form of a datapacket adapted to be transmitted between two or more computer processes.The data packet may include a cookie and/or associated contextualinformation, for example.

Various embodiments may be implemented using hardware elements, softwareelements, or a combination of both. Examples of hardware elements mayinclude devices, components, processors, microprocessors, circuits,circuit elements (e.g., transistors, resistors, capacitors, inductors,and so forth), integrated circuits, application specific integratedcircuits (ASIC), programmable logic devices (PLD), digital signalprocessors (DSP), field programmable gate array (FPGA), memory units,logic gates, registers, semiconductor device, chips, microchips, chipsets, and so forth. Examples of software elements may include softwarecomponents, programs, applications, computer programs, applicationprograms, system programs, machine programs, operating system software,middleware, firmware, software modules, routines, subroutines,functions, methods, procedures, software interfaces, application programinterfaces (API), instruction sets, computing code, computer code, codesegments, computer code segments, words, values, symbols, or anycombination thereof. Determining whether an embodiment is implementedusing hardware elements and/or software elements may vary in accordancewith any number of factors, such as desired computational rate, powerlevels, heat tolerances, processing cycle budget, input data rates,output data rates, memory resources, data bus speeds and other design orperformance constraints, as desired for a given implementation.

Some embodiments of the system 10 and associated methods may comprise anarticle of manufacture. An article of manufacture may comprise a storagemedium to store logic. Examples of a storage medium may include one ormore types of non-transitory computer-readable storage media capable ofstoring electronic data, including volatile memory or non-volatilememory, removable or non-removable memory, erasable or non-erasablememory, writeable or re-writeable memory, and so forth. Examples of thelogic may include various software elements, such as softwarecomponents, programs, applications, computer programs, applicationprograms, system programs, machine programs, operating system software,middleware, firmware, software modules, routines, subroutines,functions, methods, procedures, software interfaces, application programinterfaces (API), instruction sets, computing code, computer code, codesegments, computer code segments, words, values, symbols, or anycombination thereof. In one embodiment, for example, an article ofmanufacture may store executable computer program instructions that,when executed by a computer, cause the computer to perform methodsand/or operations in accordance with the described embodiments. Theexecutable computer program instructions may include any suitable typeof code, such as source code, compiled code, interpreted code,executable code, static code, dynamic code, and the like. The executablecomputer program instructions may be implemented according to apredefined computer language, manner or syntax, for instructing acomputer to perform a certain function. The instructions may beimplemented using any suitable high-level, low-level, object-oriented,visual, compiled and/or interpreted programming language.

Some embodiments may be described using the expression “one embodiment”or “an embodiment” along with their derivatives. These terms mean that aparticular feature, structure, or characteristic described in connectionwith the embodiment is included in at least one embodiment. Theappearances of the phrase “in one embodiment” in various places in thespecification are not necessarily all referring to the same embodiment.

Some embodiments may be described using the expression “coupled” and“connected” along with their derivatives. These terms are notnecessarily intended as synonyms for each other. For example, someembodiments may be described using the terms “connected” and/or“coupled” to indicate that two or more elements are in direct physicalor electrical contact with each other. The term “coupled,” however, mayalso mean that two or more elements are not in direct contact with eachother, but yet still co-operate or interact with each other.

It is emphasized that the Abstract of the Disclosure is provided tocomply with 37 C.F.R. Section 1.72(b), requiring an abstract that willallow the reader to quickly ascertain the nature of the technicaldisclosure. It is submitted with the understanding that it will not beused to interpret or limit the scope or meaning of the claims. Inaddition, in the foregoing Detailed Description, it can be seen thatvarious features are grouped together in a single embodiment for thepurpose of streamlining the disclosure. This method of disclosure is notto be interpreted as reflecting an intention that the claimedembodiments require more features than are expressly recited in eachclaim. Rather, as the following claims reflect, inventive subject matterlies in less than all features of a single disclosed embodiment. Thusthe following claims are hereby incorporated into the DetailedDescription, with each claim standing on its own as a separateembodiment. In the appended claims, the terms “including” and “in which”are used as the plain-English equivalents of the respective terms“comprising” and “wherein,” respectively. Moreover, the terms “first,”“second,” “third,” and so forth, are used merely as labels, and are notintended to impose numerical requirements on their objects.

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

1. A computer-implemented system comprising: a multimedia content moduleoperative to provide multimedia content related to one or more playerswithin a game; a game server application operative to provide playerrecommendations to one or more users utilizing the multimedia contentreceived from the multimedia content module, the game server comprising:a player ranking module operative to rank one or more players based oncertain of the multimedia content and output a player ranking bycorresponding player position; a player comparison module operative toreceive the player ranking by position and compare the ranked players toa roster of players associated with the one or more users bycorresponding position; a recommendation module operative to receive thecomparison of the ranked players to the roster of players bycorresponding position and recommending to the one or more users theranked player when said ranked player is ranked higher than thecorresponding player on the users roster at the corresponding position;and an action items module operative to: determine the status of aranked player, the status being one of a bench player the roster of auser, a player on the roster of another user, and a free agent notcurrently on any user's roster; and replace the roster player of the oneor more users with the ranked player at the corresponding position. 2.(canceled)
 3. The computer implemented system of claim 1 furthercomprising a multimedia content interface operative to receive thecertain of the multimedia information from the multimedia content andinformation module and associate said multimedia information with thecorresponding player to be ranked.
 4. The computer implemented system ofclaim 1 further comprising a multimedia content interface operative toreceive the certain of the multimedia information from the multimediacontent and information module and associate said multimedia informationwith a corresponding player on the roster of the one or more users atthe corresponding position.
 5. The computer implemented system of claim1 further comprising a manage settings application operative to receiverecommended ranked player and display said recommended ranked player foracceptance or rejection by the one or more users.
 6. The computerimplemented system of claim 1 further comprising a manage settingsapplication operative to allow the one or more users to display saidrecommended ranked player by position.
 7. A computer-implemented methodcomprising: providing multimedia content related to one or more playerswithin a game; ranking the one or more players based on certain of themultimedia content; outputting a ranking of each player by correspondingposition; comparing each ranked player to a roster of players associatedwith the one or more users by corresponding position; determining thestatus of a ranked player, the status being one of a bench player on theroster of a user, a player on the roster of another user, and a freeagent not currently on any user's roster; recommending to the one ormore users the ranked player when said ranked player is ranked higherthan the corresponding player on the roster of the one or more users atthe corresponding position; and replacing the roster player of the oneor more users with the ranked player at the corresponding position whenthe ranked player is ranked higher than the corresponding player on theroster of the one or more users at the corresponding position. 8.(canceled)
 9. The computer-implemented method of claim 7 furthercomprising receiving the certain of the multimedia information from themultimedia content and information module and associating saidmultimedia information with a corresponding player to be ranked.
 10. Thecomputer-implemented method of claim 7 further comprising receiving thecertain of the multimedia information from the multimedia content andinformation module and associating said multimedia information with aplayer on the roster of the one or more users at the correspondingposition.
 11. The computer-implemented method of claim 7 furthercomprising receiving the recommended ranked player and displaying saidrecommended ranked player for acceptance or rejection by the one or moreusers.
 12. The computer implemented method of claim 7 further comprisingdisplaying to the one or more users said recommended ranked player byposition.
 13. The computer-implemented method of claim 7 wherein if theranked player is a bench player ranked higher than the correspondingplayer on the roster of the one or more users at the correspondingposition, then the method further comprising replacing the player on theroster of the first user with the ranked player at the correspondingposition.
 14. The computer-implemented game method of claim 7 whereinthe one or more ranked player are at least three ranked players bycorresponding position, the method further comprising: determining ifany of the three ranked players has a higher ranking than thecorresponding player on the roster of a first of the one or more users;and if the ranked player is on the roster of another user then proposinga trade to the other user on which the first of the three ranked playersis identified as being part of the associated roster.
 15. An article ofmanufacture comprising a non-transitory computer-readable storage mediumcontaining instructions that when executed enable a system to: providemultimedia content related to one or more players within a game; rankthe one or more players based on certain of the multimedia content;output a ranking of each player by corresponding position; compare eachranked player to a roster of players associated with the one or moreusers by corresponding position; determine the status of a rankedplayer, the status being one of a bench player on the roster of a user,a player on the roster of another user, and a free agent not currentlyon any user's roster; and recommend to the one or more users the rankedplayer when said ranked player is ranked higher than the correspondingplayer on the roster of the one or more users at the correspondingposition.
 16. The article of claim 15 wherein the game corresponds to afantasy sports game and the one or more players corresponds to playersin a real-life sporting event.
 17. The article of claim 15, furthercomprising instructions that when executed enable the system to replacethe roster player of the one or more users with the ranked player at thecorresponding position when the ranked player is ranked higher than thecorresponding player on the roster of the one or more users at thecorresponding position.
 18. The article of claim 15, further comprisinginstructions that when executed enable the system to receive the certainof the multimedia information from the multimedia content andinformation module and associate said multimedia information with acorresponding player to be ranked.
 19. The article of claim 15, furthercomprising instructions that when executed enable the system to receivethe recommended ranked player and display said recommended ranked playerfor acceptance or rejection by the one or more users.
 20. The article ofclaim 15, further comprising instructions that when executed enable thesystem to automatically update the roster of the one or more users withthe ranked player at the corresponding position.
 21. The computerimplemented system of claim 1, the recommendation module furtheroperative to propose a trade for a ranked player on the roster ofanother user.
 22. The article of claim 15, further comprisinginstructions that when executed enable the system to propose a trade fora ranked player on the roster of another user.